Assisted trailer alignment system

ABSTRACT

A trailer alignment system is provided. The system comprises a sensor disposed within a housing. The system also comprises a processor configured to determine a location of a vehicle on a trailer based on data received from the sensor and in response to the vehicle location determination, the processor generates a notification. The system further comprises a notification element configured to display the generated notification to a driver of the vehicle.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is based on and claims the benefit of U.S.provisional patent application Ser. No. 62/472,134, filed Mar. 16, 2017,and is a continuation of and claims priority of U.S. patent applicationSer. No. 15/915,217, filed Mar. 8, 2018, the content of which is herebyincorporated by reference in its entirety.

BACKGROUND

Auto racing is a growing sport, having many racing events nationwide.Also auto shows have become an American staple. Participants may beattending an event that is a substantial distance from their garage. Toprevent wear on their participating vehicle when attending an event theparticipants do not drive their vehicles to the event. Instead, theparticipants transport their vehicles in a trailer when transportingthem to the event. Typically, participants use an enclosed trailer toprevent any road damage to their competition vehicles. However, othertrailers can also be used.

SUMMARY

A trailer alignment system is provided. The system comprises a sensordisposed within a housing. The system also comprises a processorconfigured to determine a location of a vehicle on a trailer based ondata received from the sensor and in response to the vehicle locationdetermination, the processor generates a notification. The systemfurther comprises a notification element configured to display thegenerated notification to a driver of the vehicle.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates trailers and vehicles in accordance with oneembodiment of the present invention.

FIG. 2 illustrates a top view of a vehicle properly aligned on a trailerin accordance with one embodiment of the present invention.

FIG. 3 illustrates a rear view of a trailer alignment system inaccordance with one embodiment of the present invention.

FIG. 4 illustrates a review of a trailer alignment system in accordancewith one embodiment of the present invention.

FIG. 5 illustrates an interior view of a vehicle during traileralignment in accordance with one embodiment of the present invention.

FIG. 6A-B illustrate trailer aligning notifications in accordance withembodiments of the present invention.

FIG. 7A-B illustrate trailer aligning notifications on a mobile devicein accordance with embodiments of the present invention.

FIG. 8 illustrates a method for vehicle trailer alignment in accordancewith one embodiment of the present invention.

FIG. 9 is a block diagram of a vehicle alignment system in accordancewith one embodiment of the present invention.

FIG. 10 is a block diagram of software/firmware disposed in a cloudcomputing architecture.

FIG. 11 provides a general block diagram of the components of a clientdevice.

FIG. 12 shows one example in which the device is a tablet computer.

FIG. 13 is one example of a computing environment in which asoftware/firmware can be deployed.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

FIG. 1 illustrates trailers and vehicles in accordance with oneembodiment of the present invention. Environment 100 comprises trailers104 and vehicle 102. Trailers 104 may be an open trailer such as trailer106 or may be an enclosed trailer, such as trailer 108. Each trailer 104is configured to receive and transport vehicle 102. In one embodiment,trailers 104 are configured to store additional vehicles or items.

FIG. 2 illustrates a top view of a vehicle properly aligned on a trailerin accordance with one embodiment of the present invention. Environment200 comprises a vehicle 210 and a trailer 204. Trailer 204 comprises aconnection 202, a bed 203, wheels 206, axles 208 and a ramp 218.Connection 202 connects the trailer to a towing vehicle (not shown, e.g.a truck). In one embodiment, connection 202 is a ball and socket. Inanother embodiment, connection 202 is a fifth-wheel connection. In afurther embodiment, connection 202 is a gooseneck connection.

Bed 203, in one embodiment, is configured to support vehicle 210. Bed203 may comprise a plurality of different materials including metal(s),synthetic(s) and/or wood(s). Bed 203 is functionally coupled to andsupported by axles 208. As shown, trailer 204 comprises two axles 208.However, trailer 204 could have fewer or additional axles 208.

Wheels 206 are coupled to axles 208. Wheels 206 and axles 208 normallyhold a majority of the weight of trailer 204 and its hauling contents.As shown, each axle 208 is coupled to two wheels 206. In one embodiment,there are more than two wheels 206 per axle 208. In one embodiment,wheels 206 are located beneath bed 203. However, wheels 206 could alsobe located outside of bed 203. Wheels 206 could also be located withinbed 203 and are protected by wheel wells. Utilization of wheel wells mayrestrict usable space on bed 203 which may lead to a tougher vehiclealignment process of vehicle 210. In one embodiment, wheels 206 comprisebrakes independent of the towing vehicle.

Vehicle 210 is loaded on to trailer 204 through a loading mechanism 218.As shown loading mechanism 218 is a solid flat ramp. However, mechanism218 can comprise two individual tire ramps. Mechanism 218 may also beloading bay equipment.

Normally, trailer 204 and vehicle 210 combination have a specific idealconfiguration that better distributes weight of vehicle 210 on trailer204. For example, this configuration requires substantially an evendistribution of weight across tires 206 (i.e. each side of the trailercarries the same weight as the other side). Such a configuration mayprovide better safety, a smoother ride and even tire wear between sidesof the trailer. The ideal configuration can require a tongue weight of10% to 20% of the total trailer weight. This configuration may provideany or all of the following: better control, safety, a smoother ride andeven wear on trailer components. Because of these benefits, users towinga vehicle ideally place the vehicle at a known good position on atrailer. Properly placing the vehicle in this position can be difficult.

FIG. 3 illustrates a rear view of a trailer alignment system inaccordance with one embodiment of the present invention. Trailer 300comprises a back wall 310, sidewalls 314, a ceiling 312 and a bed 316.Coupled to bed 316, as shown, is marker 302. In one embodiment, marker302 is tape. In one embodiment, marker 302 is paint or other marketingmaterials. Commonly, haulers mark where vehicles are best alignedthrough the use of a marker 302. This does ensure proper alignmenthowever, a driver driving the vehicle onto trailer 300 cannot see marker302 themselves and therefore require help or must exit the vehicle andcheck themselves. It is desired for a system that allows a driver toalign their vehicle without help.

Coupled to back wall 310 is alignment system 304. In other embodiments,alignment system 304 is coupled to a different trailer surface (e.g. anyof sidewalls 314, ceiling 312 or bed 316). Alignment system 304 may bepowered by an internal battery or a power source located on the trailer.Alignment system 304 may also be powered by the towing vehicle.Alignment system 304 projects a vertical laser line 306 and a horizontallaser line 308. The position of vertical laser line 306 and horizontallaser line 308 can be adjusted by alignment system 304. In oneembodiment, adjustments are made manually at system 304. In oneembodiment, adjustments are made remotely. For example, through a mobileapplication on a mobile device. Vertical laser line 306 can be used by adriver as a point of reference for left-right vehicle alignment.Horizontal laser line 308 can be used by a driver as a point ofreference for forward-backward vehicle alignment.

FIG. 4 illustrates a review of a trailer alignment system in accordancewith one embodiment of the present invention. Trailer 400 comprisesinterior surfaces 402, a sensor 404 and a display 418. In oneembodiment, sensor 404 comprises a camera. In one embodiment, sensors404 comprise lasers or lidar/lidar arrays. In another embodiment sensors404 comprise a different type of sensor e.g. camera. Sensor 404 as shownare on multiple surfaces 402. In one embodiment, sensors 404 are only ona single surface 402. Sensors 404 detect the location of a vehicleentering trailer 400. In one embodiment, sensors can detect the locationof a vehicle before it begins its entry into trailer 400.

Display 418 can display notifications to the driver of a vehicleentering trailer 400. In one embodiment, display 418 is a set of lights,e.g. LED. Display 418 could also be a LCD/LED screen or the like. In oneembodiment, displays 418 comprised fixed light up displays. As shownmultiple displays 418 can be attached to multiple surfaces 402. In oneembodiment, there are more than one display 418. Some of thenotifications that display 418 can display to the driver include: entertrailer, drive forward, drive backward, drive left, drive right, exittrailer, reenter trailer, etc. In one embodiment, there are no displays418 on surfaces 402, instead notifications are received through anotherchannel. Some examples of other channels include on board vehicledisplays or mobile devices, e.g. through a mobile phone app.

FIG. 5 illustrates an interior view of a vehicle during traileralignment in accordance with one embodiment of the present invention.Environment 500 illustrates a point of view, for example, from a driverdriving a vehicle into a trailer. View 500 illustrates a windshield 504,a vertical laser line 506, a horizontal laser line 508 and markers 502.Vertical laser line 506 and horizontal laser line 508 can provide pointof references for the driver while they are aligning the vehicle withinthe trailer. Markers 502 as shown are placed on the windshield 504 aspoints of reference for the driver. As shown there are only two markers502. In one embodiment, there are more, e.g. 3, 4 or 5 markers 502. Inone embodiment, markers 502 are tape. In one embodiment, markers 502 aremade of a composition that reacts to light. A reaction to light mayfurther emphasize when the marker 502 contacts a laser. When verticallaser line 506 and horizontal laser line 508 are in a known goodconfiguration with markers 502 the driver knows that they are in thecorrect location.

A known configuration, in one embodiment, might be that marker 502contacts the laser lines 506, 508 at the intersection of the laser lines506, 508. The known good configuration in another embodiment might bethat a first marker 502 contacts horizontal laser line 508 at the sametime a second marker contacts vertical laser line 506. In such ascenario, the greater the distance between markers 502, the moreaccurate the alignment will be. The known good configuration may be alsobe a different configuration for different scenarios.

FIG. 6A illustrates a trailer aligning notification in accordance withone embodiment of the present invention. Notification system 600, in oneembodiment, comprise arrows 602 and stop 604. Arrows 602 can, forexample, light up or otherwise notify the driver. For example, an uparrow indicates to drive forward and a left arrow indicates to driveleft. Stop 604 can light up or otherwise notify the driver. For example,stop 604 can indicate that the driver has piloted the vehicle to thecorrect position.

FIG. 6B illustrates a trailer aligning notification in accordance withone embodiment of the present invention. Notification 610 comprises anarray of indicators 612. In one embodiment, indicator 612 is anindividual LED or an array. In one embodiment, an LED array may light upcorresponding to where the vehicle is located in the trailer. Forexample, if the vehicle is located slightly to the left and rear ofwhere the vehicle should be positioned, then the lights to the left andbottom will be illuminated and as the vehicle gets closer to the correctposition the lights will be illuminated closer to the center. In onembodiment lights can indicate where to go, e.g. to the right andforward.

FIG. 7A illustrates a trailer aligning notification on a mobile devicein accordance with one embodiment of the present invention. Mobileenvironment 700 comprises a mobile device 702 with a display 704.Displayed on display 704 are inactive icons 706 and active icons 708.Active icons 708 notify the driver of the vehicle to continue drivingforward and to the right. In addition to the mobile device display icons706, 708, the mobile device 702 may also, in one embodiment, generateaudible and/or haptic notifications.

FIG. 7B illustrates a trailer aligning notification on a mobile devicein accordance with one embodiment of the present invention. Mobileenvironment 750 comprises a mobile device 752 with a display 754.Displayed on display 754 are notifications 756 superimposed over acamera feed 764. Camera feed 764, as shown comprises a vehicle 758within a trailer 760. Also superimposed over camera feed 764 is, forexample, miscellaneous item 762. Miscellaneous item 762, can be a buttonthat turns a light on in the trailer. Miscellaneous items 762, in oneembodiment, is a button that switches the spectrum of the camera. Forexample, element 762 can actuate between visible light to a night visionspectrum of light.

FIG. 8 illustrates a method for vehicle trailer alignment in accordancewith an embodiment of the present invention. Method 800 begins at block802. At block 802 the sensor is turned on. In one embodiment, the sensoris a camera as indicated by block 816. In one embodiment, the sensor isa laser as indicated by block 818. In one embodiment, the sensor is alidar, sonar, radar as indicated by block 820 or an array of anysuitable sensors. The sensor may also be some other sensor as indicatedby block 822. The sensor can be turned on automatically as indicated byblock 826 or manually as indicated by block 824. Automatically mayinvolve turning the sensor on when the trailer loading mechanism isactivated. Manually may involve activating a mechanism on the sensor.Manually may also involve remote activation. The sensor may be actuatedin some other manner as well as indicated by block 828.

At block 804, the vehicle is detected by the sensor. In one embodiment,the vehicle is detected before it enters the trailer. In one embodiment,the vehicle is detected when contacting or entering the trailer. Thesensor data used may be an image as indicated by block 830 or alidar/sonar/radar reading as indicated by block 832. The sensor dataused may also be some other type of data as indicated by block 834.

At block 806, the vehicle's location is determined. In one embodiment,the vehicle's location is determined by the sensor. The sensor data maybe an image as indicated by block 836. The sensor data may be alidar/sonar/radar reading as indicated by block 838. The sensor data mayalso be some other type of sensor data as indicated by block 840. In oneembodiment, the vehicle's location is determined by a processor coupledto the sensor. To calculate the vehicle's location, in one embodiment,the processor may analyze images provided by the camera. In thisanalysis, the processor looks for a specific point or points of avehicle and determines if they are in the correct position for properalignment. For example, the camera takes video or a plurality of imagesof the car entering the trailer, while the processor tracks location ofthe tires of the vehicle, such that when the tires reach a certainposition, the car is also in the correct position. In anotherembodiment, the specific points may not be the tires, but instead be apoint on the car body, windshield, mirrors, lights, etc.

At block 808, a notification is generated based at least in part on thevehicles location. The notification can be visual 842. The notificationcan be audible 844. In one embodiment, the notification is one of thenotifications from FIGS. 7A-B. In one embodiment, the notification is adifferent notification. Notification is generated is also displayed on adisplay visible to the driver of the vehicle. The display, in oneembodiment, is on a mobile device 844. The display, in one embodiment,is located on a fixed display 842. For example, a display on the wall ofthe trailer. The display may also be another type of notification asindicated by block 846.

At block 810, it is determined if the vehicle is in the correctlocation. If the vehicle is not in the correct location, method 800continues at block 804 where the vehicle is detected. If the vehicle isin the correct location method 800 continues at block 812. In oneembodiment, the condition at block 810 must be met for a given amount oftime. This prevents the driver from entering the correct position andthen continuing to drive out of the correct position. In one embodiment,there is a tolerance associated with the correct position. The tolerancemay allow the car to be a given distance away from the exact positionyet still be close enough for the desired positive effects.

At block 812, a correct position notification is generated. In oneembodiment, the notification is a visual notification. In oneembodiment, the notification is a audible notification. The correctposition notification, in one embodiment, is presented using a mobiledevice.

At block 814, the sensor is optionally powered down. In one embodiment,the sensor remains fully functional and operational after alignment.This may be desired to detect shifting/movement during transport. Anotification can alert the driver that the sensor and display are aboutto be powered down. Powered down can comprise the sensor in an activestate but only responsive to large changes in sensor data. For example,similar to a security camera changing frame rates based on detection ofa person. Powered down can also mean the sensor completely turning off.

It will be noted that the above discussion has described a variety ofdifferent systems, components and/or logic. It will be appreciated thatsuch systems, components and/or logic can be comprised of hardware items(such as processors and associated memory, or other processingcomponents, some of which are described below) that perform thefunctions associated with those systems, components and/or logic. Inaddition, the systems, components and/or logic can be comprised ofsoftware that is loaded into a memory and is subsequently executed by aprocessor or server, or other computing component, as described below.The systems, components and/or logic can also be comprised of differentcombinations of hardware, software, firmware, etc., some examples ofwhich are described below. These are only some examples of differentstructures that can be used to form the systems, components and/or logicdescribed above. Other structures can be used as well.

The present discussion has mentioned processors and servers. In oneembodiment, the processors and servers include computer processors withassociated memory and timing circuitry, not separately shown. They arefunctional parts of the systems or devices to which they belong and areactivated by, and facilitate the functionality of the other componentsor items in those systems.

Also, a number of user interface displays have been discussed. They cantake a wide variety of different forms and can have a wide variety ofdifferent user actuatable input mechanisms disposed thereon. Forinstance, the user actuatable input mechanisms can be text boxes, checkboxes, icons, links, drop-down menus, search boxes, etc. They can alsobe actuated in a wide variety of different ways. For instance, they canbe actuated using a point and click device (such as a track ball ormouse). They can be actuated using hardware buttons, switches, ajoystick or keyboard, thumb switches or thumb pads, etc. They can alsobe actuated using a virtual keyboard or other virtual actuators. Inaddition, where the screen on which they are displayed is a touchsensitive screen, they can be actuated using touch gestures. Also, wherethe device that displays them has speech recognition components, theycan be actuated using speech commands.

A number of data stores have also been discussed. It will be noted theycan each be broken into multiple data stores. All can be local to thesystems accessing them, all can be remote, or some can be local whileothers are remote. All of these configurations are contemplated herein.

Also, the figures show a number of blocks with functionality ascribed toeach block. It will be noted that fewer blocks can be used so thefunctionality is performed by fewer components. Also, more blocks can beused with the functionality distributed among more components.

FIG. 9 is a block diagram of a vehicle alignment system in accordancewith one embodiment of the present invention. Vehicle alignment system950 comprises alignment device 952, trailer 954 and vehicle 956. In oneembodiment, alignment device 952 comprises housing 958, display 960,sensor 962, circuitry 964 and software/firmware 966. Alignment device952 may also comprise other components 968. Vehicle alignment system 950may comprise more than one alignment device 952. Housing 958 can housesome or all of the other components of alignment device 952. Housing 958can be made to be driven over by vehicle 956. Housing 958 can be mountedon any surface of trailer 954. Housing 958 can also be mounted on asurface of vehicle 956. Display 960 displays notifications or otherindications to a driver in order for the driver to know whether thevehicle 956 they are piloting is in the correct position. Display 960can be projected from housing 958, i.e. lasers. Display 960 can beseparate from alignment device 952, for example, mounted on a differentinterior surface of trailer 954. Display 960 can be a screen. Display960 can be an LED or an array of LEDs. Display 960 can be a userinterface on a mobile device. Display 960 can also comprise a speaker.Sensor 962 can be a variety of different sensors including lidar, sonar,radar, camera, etc. Sensor 962 can comprise more than one sensor 962.Circuitry 964 provides a logic to control alignment device 952.Circuitry 964 can comprise a processor, memory and inputs/outputs.Circuitry 964 can also store software/firmware 966. Circuitry 964 orsoftware/firmware 966 can also store different ideal locations fordifferent vehicles 956.

Trailer 954, in one embodiment, comprises bed 974, wheels/axles 976,wheel wells 978. Trailer 954 may also comprise other components 980.Trailer 954 can be an enclosed 970. Trailer 954 can be open 972. Bed 974can be comprised of any suitable material, for example wood or metal.Bed 974 is supported by wheels/axles 976. Trailer 954 can comprise oneset of wheels/axles 976. Trailer 954 can also comprise more than one setof wheels/axles 976 (tandem axle). Trailer 954 can comprise two wheelsper axle or can comprise more than two wheels per axle. Wheels/axles 976can be protected by wheel wells 978. Wheel wells 978 can be locatedoutside of trailer bed 974. Wheel wells 978 can be located within thetrailer bed 974, such that wheel wells 978 restrict usable space on bed974. Wheel wells 978 can be located underneath bed 974, such that theydon't restrict usable space on bed 974.

Vehicle 956, in one embodiment comprises body 982, windshield 984 andtires 986. Vehicle 956 may also comprise other components 988. Sensor962 of alignment device 952 detects a component of vehicle 956 todetermine if vehicle 956 is in correct alignment. Body 982 can bereadily visible to sensor 962. However, body 982 may shift or not besymmetrical, meaning body 982 might not be the best component to judgealignment by sensor 962. Windshield 984 can also be readily visible tosensor 962 and/or display 960. In an embodiment where display 960 is alaser/laser line, windshield 984 can be used to judge alignment ofvehicle 956. Tires 986 can be readily visible to sensor 962. Tires 986are an ideal way of judging proper alignment of vehicle 956 becausetires 986 support the weight of vehicle 956.

FIG. 10 is a block diagram of software/firmware 966, shown in FIG. 9,except that its elements are disposed in a cloud computing architecture900. Cloud computing provides computation, software, data access, andstorage services that do not require end-user knowledge of the physicallocation or configuration of the system that delivers the services. Invarious embodiments, cloud computing delivers the services over a widearea network, such as the internet, using appropriate protocols. Forinstance, cloud computing providers deliver applications over a widearea network and they can be accessed through a web browser or any othercomputing component. Software or components of architecture 966 as wellas the corresponding data, can be stored on servers at a remotelocation. The computing resources in a cloud computing environment canbe consolidated at a remote data center location or they can bedispersed. Cloud computing infrastructures can deliver services throughshared data centers, even though they appear as a single point of accessfor the user. Thus, the components and functions described herein can beprovided from a service provider at a remote location using a cloudcomputing architecture. Alternatively, they can be provided from aconventional server, or they can be installed on client devicesdirectly, or in other ways.

The description is intended to include both public cloud computing andprivate cloud computing. Cloud computing (both public and private)provides substantially seamless pooling of resources, as well as areduced need to manage and configure underlying hardware infrastructure.

A public cloud is managed by a vendor and typically supports multipleconsumers using the same infrastructure. Also, a public cloud, asopposed to a private cloud, can free up the end users from managing thehardware. A private cloud may be managed by the organization itself andthe infrastructure is typically not shared with other organizations. Theorganization still maintains the hardware to some extent, such asinstallations and repairs, etc.

In the example shown in FIG. 10, some items are similar to those shownin FIG. 9 and they are similarly numbered. FIG. 10 specifically showsthat software/firmware 966 can be located in cloud 902 (which can bepublic, private, or a combination where portions are public while othersare private). Therefore, driver 1102 uses a driver device 1104 anddriver system 1106 to access alignment systems 1108 through cloud 902.Driver 1102 uses a driver device 1104 and driver system 1106 todatastore 1126 through cloud 902. Software/firmware 966 can access datalocated in datastore 1126.

FIG. 11 provides a general block diagram of the components of a clientdevice 1104 that can run components of architecture 966 or thatinteracts with architecture 966, or both. In the device 16, acommunications link 13 is provided that allows the handheld device tocommunicate with other computing devices and under some embodimentsprovides a channel for receiving information automatically, such as byscanning. Examples of communications link 13 include an infrared port, aserial/USB port, a cable network port such as an Ethernet port, and awireless network port allowing communication though one or morecommunication protocols including General Packet Radio Service (GPRS),LTE, HSPA, HSPA+ and other 3G and 4G radio protocols, 1×rtt, and ShortMessage Service, which are wireless services used to provide cellularaccess to a network, as well as Wi-Fi protocols, and Bluetooth protocol,which provide local wireless connections to networks.

In other examples, applications or systems are received on a removableSecure Digital (SD) card that is connected to a SD card interface 15. SDcard interface 15 and communication links 13 communicate with aprocessor 17 (which can also embody processors or servers from previousFigures) along a bus 19 that is also connected to memory 21 andinput/output (I/O) components 23, as well as clock 25 and locationsystem 27.

I/O components 23, in one embodiment, are provided to facilitate inputand output operations. I/O components 23 for various embodiments of thedevice 16 can include input components such as buttons, touch sensors,multi-touch sensors, optical or video sensors, voice sensors, touchscreens, proximity sensors, microphones, tilt sensors, and gravityswitches and output components such as a display device, a speaker, andor a printer port. Other I/O components 23 can be used as well.

Clock 25 illustratively comprises a real time clock component thatoutputs a time and date. It can also, illustratively, provide timingfunctions for processor 17.

Location system 27 illustratively includes a component that outputs acurrent geographical location of device 16. This can include, forinstance, a global positioning system (GPS) receiver, a LORAN system, adead reckoning system, a cellular triangulation system, or otherpositioning system. It can also include, for example, mapping softwareor navigation software that generates desired maps, navigation routesand other geographic functions.

Memory 21 stores operating system 29, network settings 31, applications33, application configuration settings 35, data store 37, communicationdrivers 39, and communication configuration settings 41. Memory 21 caninclude all types of tangible volatile and non-volatilecomputer-readable memory devices. It can also include computer storagemedia (described below). Memory 21 stores computer readable instructionsthat, when executed by processor 17, cause the processor to performcomputer-implemented steps or functions according to the instructions.Similarly, device 16 can have a client business system 24 which can runvarious applications or embody parts or all of system 102. Processor 17can be activated by other components to facilitate their functionalityas well.

Examples of the network settings 31 include things such as proxyinformation, Internet connection information, and mappings. Applicationconfiguration settings 35 include settings that tailor the applicationfor a specific enterprise or user. Communication configuration settings41 provide parameters for communicating with other computers and includeitems such as GPRS parameters, SMS parameters, connection user names andpasswords.

Applications 33 can be applications that have previously been stored onthe device 16 or applications that are installed during use, althoughthese can be part of operating system 29, or hosted external to device16, as well.

FIG. 12 shows one example in which device 16 is a tablet computer 1100.In FIG. 12, computer 1100 is shown with user interface display screen1102. Screen 1102 can be a touch screen (so touch gestures from a user'sfinger can be used to interact with the application) or a pen-enabledinterface that receives inputs from a pen or stylus. It can also use anon-screen virtual keyboard. Of course, it might also be attached to akeyboard or other user input device through a suitable attachmentmechanism, such as a wireless link or USB port, for instance. Computer1100 can also illustratively receive voice inputs as well.

Device 16 can be a smart phone 1100. Smart phone 1100 has a touchsensitive display 602 that displays icons or tiles or other user inputmechanisms. Mechanisms can be used by a user to run applications, makecalls, perform data transfer operations, etc. In general, smart phone 16is built on a mobile operating system and offers more advanced computingcapability and connectivity than a feature phone.

Note that other forms of the devices 16 are possible.

FIG. 13 is one example of a computing environment in whichsoftware/firmware 966, or parts of it, (for example) can be deployed.With reference to FIG. 13, an example system for implementing someembodiments includes a general-purpose computing device in the form of acomputer 1010. Components of computer 1010 may include, but are notlimited to, a processing unit 1020 (which can comprise processors orservers from previous Figures), a system memory 1030, and a system bus1021 that couples various system components including the system memoryto the processing unit 1020. The system bus 1021 may be any of severaltypes of bus structures including a memory bus or memory controller, aperipheral bus, and a local bus using any of a variety of busarchitectures. By way of example, and not limitation, such architecturesinclude Industry Standard Architecture (ISA) bus, Micro ChannelArchitecture (MCA) bus, Enhanced ISA (EISA) bus, Video ElectronicsStandards Association (VESA) local bus, and Peripheral ComponentInterconnect (PCI) bus also known as Mezzanine bus. Memory and programsdescribed with respect to FIG. 1 can be deployed in correspondingportions of FIG. 9.

Computer 1010 typically includes a variety of computer readable media.Computer readable media can be any available media that can be accessedby computer 1010 and includes both volatile and nonvolatile media,removable and non-removable media. By way of example, and notlimitation, computer readable media may comprise computer storage mediaand communication media. Computer storage media is different from, anddoes not include, a modulated data signal or carrier wave. It includeshardware storage media including both volatile and nonvolatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer readableinstructions, data structures, program modules or other data. Computerstorage media includes, but is not limited to, RAM, ROM, EEPROM, flashmemory or other memory technology, CD-ROM, digital versatile disks (DVD)or other optical disk storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by computer 1010. Communication media typically embodiescomputer readable instructions, data structures, program modules orother data in a transport mechanism and includes any informationdelivery media. The term “modulated data signal” means a signal that hasone or more of its characteristics set or changed in such a manner as toencode information in the signal. By way of example, and not limitation,communication media includes wired media such as a wired network ordirect-wired connection, and wireless media such as acoustic, RF,infrared and other wireless media. Combinations of any of the aboveshould also be included within the scope of computer readable media.

The system memory 1030 includes computer storage media in the form ofvolatile and/or nonvolatile memory such as read only memory (ROM) 1031and random access memory (RAM) 1032. A basic input/output system 1033(BIOS), containing the basic routines that help to transfer informationbetween elements within computer 1010, such as during start-up, istypically stored in ROM 1031. RAM 1032 typically contains data and/orprogram modules that are immediately accessible to and/or presentlybeing operated on by processing unit 1020. By way of example, and notlimitation, FIG. 13 illustrates operating system 1034, applicationprograms 1035, other program modules 1036, and program data 1037.

The computer 1010 may also include other removable/non-removablevolatile/nonvolatile computer storage media. By way of example only,FIG. 13 illustrates a hard disk drive 1041 that reads from or writes tonon-removable, nonvolatile magnetic media, and an optical disk drive1055 that reads from or writes to a removable, nonvolatile optical disk1056 such as a CD ROM or other optical media. Otherremovable/non-removable, volatile/nonvolatile computer storage mediathat can be used in the exemplary operating environment include, but arenot limited to, magnetic tape cassettes, flash memory cards, digitalversatile disks, digital video tape, solid state RAM, solid state ROM,and the like. The hard disk drive 1041 is typically connected to thesystem bus 1021 through a non-removable memory interface such asinterface 1040, and optical disk drive 1055 are typically connected tothe system bus 1021 by a removable memory interface, such as interface1050.

Alternatively, or in addition, the functionality described herein can beperformed, at least in part, by one or more hardware logic components.For example, and without limitation, illustrative types of hardwarelogic components that can be used include Field-programmable Gate Arrays(FPGAs), Program-specific Integrated Circuits (ASICs), Program-specificStandard Products (ASSPs), System-on-a-chip systems (SOCs), ComplexProgrammable Logic Devices (CPLDs), etc.

The drives and their associated computer storage media discussed aboveand illustrated in FIG. 13, provide storage of computer readableinstructions, data structures, program modules and other data for thecomputer 1010. In FIG. 13, for example, hard disk drive 1041 isillustrated as storing operating system 1044, application programs 1045,other program modules 1046, and program data 1047. Note that thesecomponents can either be the same as or different from operating system1034, application programs 1035, other program modules 1036, and programdata 1037. Operating system 1044, application programs 1045, otherprogram modules 1046, and program data 1047 are given different numbershere to illustrate that, at a minimum, they are different copies.

A user may enter commands and information into the computer 1010 throughinput devices such as a keyboard 1062, a microphone 1063, and a pointingdevice 1061, such as a mouse, trackball or touch pad. Other inputdevices (not shown) may include a joystick, game pad, satellite dish,scanner, or the like. These and other input devices are often connectedto the processing unit 1020 through a user input interface 1060 that iscoupled to the system bus, but may be connected by other interface andbus structures, such as a parallel port, game port or a universal serialbus (USB). A visual display 1091 or other type of display device is alsoconnected to the system bus 1021 via an interface, such as a videointerface 1090. In addition to the monitor, computers may also includeother peripheral output devices such as speakers 1097 and printer 1096,which may be connected through an output peripheral interface 1095.

The computer 1010 is operated in a networked environment using logicalconnections to one or more remote computers, such as a remote computer1080. The remote computer 1080 may be a personal computer, a hand-helddevice, a server, a router, a network PC, a peer device or other commonnetwork node, and typically includes many or all of the elementsdescribed above relative to the computer 1010. The logical connectionsdepicted in FIG. 13 include a local area network (LAN) 1071 and a widearea network (WAN) 1073, but may also include other networks. Suchnetworking environments are commonplace in offices, enterprise-widecomputer networks, intranets and the Internet.

When used in a LAN networking environment, the computer 1010 isconnected to the LAN 1071 through a network interface or adapter 1070.When used in a WAN networking environment, the computer 1010 typicallyincludes a modem 1072 or other means for establishing communicationsover the WAN 1073, such as the Internet. The modem 1072, which may beinternal or external, may be connected to the system bus 1021 via theuser input interface 1060, or other appropriate mechanism. In anetworked environment, program modules depicted relative to the computer1010, or portions thereof, may be stored in the remote memory storagedevice. By way of example, and not limitation, FIG. 13 illustratesremote application programs 1085 as residing on remote computer 1080. Itwill be appreciated that the network connections shown are exemplary andother means of establishing a communications link between the computersmay be used.

It should also be noted that the different examples described herein canbe combined in different ways. That is, parts of one or more examplescan be combined with parts of one or more other examples. All of this iscontemplated herein.

What is claimed is:
 1. A trailer alignment system, the systemcomprising: a sensor disposed within a housing; a processor configuredto determine a location of a vehicle on a trailer based on data receivedfrom the camera; in response to the vehicle location determination, theprocessor generates a notification; and a notification elementconfigured to display the generated notification to a driver of thevehicle.
 2. The trailer alignment system of claim 1, wherein the sensoris a camera.
 3. The trailer alignment system of claim 1, wherein thenotification element comprises an array of LEDs.
 4. The traileralignment system of claim 1, wherein the notification element comprisesan in-application notification on a mobile device.
 5. The traileralignment system of claim 1, wherein the notification element comprisesa speaker generating an audible notification.
 6. The trailer alignmentsystem of claim 1, wherein the housing is structurally capable ofsupporting a vehicle weight.
 7. The trailer alignment system of claim 1,wherein the data received from the camera comprises an image of a tireof the vehicle and the determination is based at least in part on thelocation of the tire in the image.
 8. The trailer alignment system ofclaim 1, wherein there is more than one camera, each within their ownhousing.
 9. A method for aligning a vehicle on a trailer, the methodcomprising: detecting, with a camera, a vehicle; determining, with aprocessor, a location of the vehicle based on an image provided by thecamera; and generating, with the processor, a guidance notification tothe driver based on the detected position.
 10. The method of claim 9,displaying the guidance notification on a mobile device.
 11. The methodof claim 9, projecting the guidance notification from a speaker.
 12. Themethod of claim 9, sending, over a wireless connection, the notificationto a mobile device.
 13. The method of claim 9, wherein the guidancenotification comprises a guidance command superimposed on a live imagefeed from the camera.
 14. The method of claim 9, powering down, thecamera and processor after a time period of the vehicle being located ina proper alignment position.